草庐IT

java - 我的 ThreadPoolExecutor 是否泄漏内存?

全部标签

ruby-on-rails - 为什么我的 rails 命令总是创建一个新的应用程序?

请原谅我,因为我是*nix和ruby​​onrails的新手。我的rails命令总是创建一个新的应用程序,我不明白为什么。运行“railsnewmyApp”只会在当前目录中生成一个名为“new”的新Rails应用程序。同样,“railsserver”只是在名为“server”的文件夹中创建一个新应用程序。有任何想法吗?我正在使用Ubuntu11.04和rails3.0.9。 最佳答案 要在当前目录下创建项目,你可以运行:railsnew. 关于ruby-on-rails-为什么我的rai

ruby - 如何检测我的代码运行的是 "inside"Sidekiq 服务器还是 Puma?

我使用Puma作为网络服务器,使用Sidekiq作为我的队列运行器。对于多种事物(数据库连接、Redis连接、其他外部服务),我使用ConnectionPoolgem来管理对连接的安全访问。现在,根据我是在Sidekiq还是Puma的上下文中运行,我需要这些池的大小不同(分别与Sidekiq线程或Puma线程的数量一样大,而且它们是不同的)在您的初始化程序中,根据执行上下文了解连接池大小的最佳方法是什么?谢谢! 最佳答案 您使用Sidekiq.server?当不在Sidekiq进程本身内运行时返回nil。

ruby - 为什么我无法确定我的 ruby​​ 安装版本?

当我运行ruby-version时,我得到:ruby1.8.7(2012-02-08patchlevel358)[universal-darwin11.0]-e:1:undefinedlocalvariableormethod`rsion'formain:Object(NameError)有什么问题吗? 最佳答案 使用ruby​​-v或ruby​​--version。它正在将-version解析为rsion。这两个都行。计算破折号的数量:ruby-vruby--version当您提供带有“version”的单个破折号时,Ruby会看

ruby - 是否有可能获得 Ruby 中的所有特征类?

在Ruby中获取所有模块的列表很容易:ObjectSpace.each_object(Module).to_a但是,是否有可能获得所有特征类(也称为单例类或元类)的列表?或者特征类是不可见的?我试过了str="foo"my_metaclass=class我正在尝试获取特征类,因为我想列出脚本中定义的所有方法。我可以查找模块和类定义的所有实例方法,然后查找模块和类(或所有对象,如果我想消耗CPU)的单例方法,但这似乎有点老套。 最佳答案 如果您指的是具有单例方法的对象,这应该可行。eigens=[]ObjectSpace.each_o

ruby-on-rails - 如何构建我的 RSpec 测试文件夹、文件和数据库?

我已经使用RoR进行开发一年多了,但我才刚刚开始使用RSpec进行测试。对于标准模型/Controller测试,我通常没有任何问题,但问题是我想测试一些复杂的功能流程,并且不知道如何构建我的测试文件夹/文件/数据库。这是我的应用程序的基本结构:classCustomerhas_one:wallethas_many:ordershas_many:invoices,through::ordershas_many:invoice_summariesendclassWalletbelongs_to:customerendclassOrderhas_one:invoicebelongs_to:c

ruby - Ruby 1.9 正则表达式是否与上下文无关语法同样强大?

我有这个正则表达式:regex=%r{\A(?a\ga|b\gb|c)\Z}x当我针对多个字符串测试它时,它似乎与上下文无关语法一样强大,因为它正确地处理了递归。regex.match("aaacaaa")#=>#regex.match("aacaa")#=>#regex.match("aabcbaa")#=>#regex.match("aaacaa")#=>nil"FunwithRuby1.9RegularExpressions"有一个例子,他实际上安排了一个正则表达式的所有部分,使其看起来像一个上下文无关的语法,如下所示:sentence=%r{(?cat|dog|gerbil){

ruby-on-rails - rails 中是否内置了对默认值替换习惯用法的支持?

我经常编写代码以在遇到nil/空值时提供默认值。例如:category=order.category||"Any"#ORcategory=order.category.empty??"Any":order.category我即将扩展try方法来处理这个习语。category=order.try(:category,:on_nill=>"Any")#ORcategory=order.try(:category,:on_empty=>"Any")我想知道Rails/Ruby是否有一些方法来处理这个习惯用法?注意:我正在尝试消除||的重复/或/?基于运算符的习语。本质上,我正在寻找与try方

ruby - 是否有可能 'unload' ('un-require' ) 一个 Ruby 库?

我希望加载一些库,让它们做一些工作,然后执行与require相反的操作,以避免以后出现兼容性错误。我不想转储到文件并重新启动shell,因为创建的对象(例如data)可以由我的其他库很好地处理,只是不存在早期我要卸载的那些。有人有任何建议或知道这是否可行吗?Aconversationfrom2006除了“看起来Webrick设法以某种方式做到这一点”之外,没有得出太多结论。有问题的库是Google_driveandNokogiri(电子表格处理库Roo依赖Google_drive进行在线电子表格读/写,如该链接所述)。 最佳答案 正

ruby - 如何确定我的流程是否正在交互式运行?

是否有一种标准(ish)POSIX方法来确定我的进程(我现在正在将其编写为Ruby脚本;但我对多种环境感到好奇,包括Node.js和ISOC命令行应用程序)正在交互式终端中运行,而不是cron,或者从其他工具执行,或者……等等。具体来说,我需要在某些情况下获取用户输入,如果确定不可能(即由cron运行),我需要致命失败。我可以使用环境变量来做到这一点,但如果可以的话,我更喜欢更标准的东西。 最佳答案 我一直使用$stdout.isatty来检查这一点。其他方法可能包括检查ENV['TERM']的值或利用ruby-terminfoge

ruby-on-rails - 我的非模型/非 Controller 代码应该放在哪里?

我编写了一个遵循常规目录结构的Rails应用程序(模型代码在模型中,Controller代码在Controller中)。但我现在正在开发一项新功能,为此我编写了一些(我称之为)“服务”代码。新功能是将一些数据导入系统,目前是两个类来进行导入,但可以扩展到更多。我不认为新代码属于模型,因为它不对任何对象建模(它也不直接与任何单个对象相关。我当然不认为它属于Controller,因为它不是表示逻辑。因此,我创建了一个“app/services”目录并将其放在那里。我还创建了一个“test/services”目录,用于放置我的测试。我认为一切都很好,但是当我运行“rake:test”或“au